package com.xbongbong.sys.domain.dao;

import com.xbongbong.sys.domain.entity.MirrorCompanyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * 公司镜像配置
 * @author xingxing.xiao
 * @date 2019/11/25 16:57
 */
@Repository
@Mapper
public interface MirrorCompanyDao {

    /**
     * 插入数据
     *
     * @param entity 公司镜像
     * @return java.lang.Integer
     * @author long.rao
     * @date 2019-01-29 21:03
     */
    Integer insert(MirrorCompanyEntity entity);

    /**
     * 更新数据
     *
     * @param entity 公司镜像配置
     * @return java.lang.Integer
     * @author xingxing.xiao
     * @date 2019/11/25 17:14
     */
    Integer update(MirrorCompanyEntity entity);

    /**
     * 删除实体
     *
     * @param key 数据id
     * @param corpid 公司id
     * @return java.lang.Integer
     * @author xingxing.xiao
     * @date 2019/11/25 17:15
     */
    Integer deleteByKey(@Param("key") Long key, @Param("corpid") String corpid);

    /**
     * 获取实体
     *
     * @param key 数据id
     * @param corpid 公司id
     * @author xingxing.xiao
     * @date 2019/11/25 17:17
     */
    MirrorCompanyEntity getByKey(@Param("key") Long key, @Param("corpid") String corpid);

    /**
     * 查询公司版本配置
     * @author xingxing.xiao
     * @date 2019/11/25 17:17
     */
    MirrorCompanyEntity getMirrorCompany(@Param("param") Map<String, Object> param);

    /**
     * 获取符合查询条件的记录总数
     *
     * @param param
     * @author xingxing.xiao
     * @date 2019/11/25 17:33
     */
    Integer getEntitysCount(@Param("param") Map<String, Object> param);

    /**
     * 查询实体列表
     *
     * @param param 条件
     * @author xingxing.xiao
     * @date 2019/11/25 17:16
     */
    List<MirrorCompanyEntity> findEntitys(@Param("param") Map<String, Object> param);

}
